package com.hyzx.qbasic.admin.domain.service;

import com.github.pagehelper.PageInfo;
import com.hyzx.qbasic.admin.model.po.RolePO;
import com.hyzx.qbasic.admin.model.vo.req.admin.AddRoleReq;
import com.hyzx.qbasic.admin.model.vo.req.admin.DeleteRoleReq;
import com.hyzx.qbasic.admin.model.vo.req.admin.EditRoleReq;
import com.hyzx.qbasic.admin.model.vo.req.admin.GetRoleListReq;
import com.hyzx.qbasic.admin.model.vo.res.BaseOperationRes;

import java.util.List;
import java.util.Set;

/**
 * Created by 黄江华 on 2017/10/17
 */

public interface IRoleService {
    List<RolePO> getAllRoleList();

    List<String> getAllRoleNameList();

    Set<String> getUserRoleNameList(int userId);

    PageInfo<RolePO> getPagedRoleList(GetRoleListReq req);

    BaseOperationRes addRole(AddRoleReq req);

    List<Integer> getRoleResources(int roleId);

    RolePO getRoleInfo(int roleId);

    BaseOperationRes editRole(EditRoleReq req);

    BaseOperationRes deleteRole(DeleteRoleReq req);
}
